package com.shycloud.mido.member.service;

import java.util.List;

import org.apache.ibatis.annotations.Param;
import org.springframework.web.bind.annotation.RequestBody;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.shycloud.mido.common.core.util.R;
import com.shycloud.mido.homework.api.vo.AtvActiveDetailItemVO;
import com.shycloud.mido.homework.api.vo.AtvActiveDetailReqVO;
import com.shycloud.mido.member.api.entity.AtvMainActive;
import com.shycloud.mido.member.api.vo.AtvMainActivePageVO;
import com.shycloud.mido.member.api.vo.AtvMainActiveReqVO;
import com.shycloud.mido.member.api.vo.AtvMainActiveRespVO;

public interface AtvMainActiveService extends IService<AtvMainActive> {

	IPage<AtvMainActiveRespVO> pageAtvMainActiveRespVO(IPage<AtvMainActiveRespVO> page,AtvMainActivePageVO vo);
	
	IPage<AtvMainActiveRespVO> pageAtvMainActiveRespVOTea(IPage<AtvMainActiveRespVO> page,AtvMainActivePageVO vo);
	
	IPage<AtvMainActiveRespVO> pageAtvMainActiveRespVOStu(IPage<AtvMainActiveRespVO> page,AtvMainActivePageVO vo);
	
	IPage<AtvMainActiveRespVO> pageAtvMainActiveRespVONoSession(IPage<AtvMainActiveRespVO> page,AtvMainActivePageVO vo);
	
	AtvMainActiveRespVO getAtvMainActiveRespVO(AtvMainActivePageVO vo);
	
	boolean saveOrUpdateAtvMainActive(@RequestBody AtvMainActiveReqVO vo) throws Exception;
	
	List<AtvActiveDetailItemVO> studentActiveDatail(AtvActiveDetailReqVO vo);
	
	Integer queryMainActiveStatus(String mainActiveId);
	
	boolean logicDeleteAtv(String id) throws Exception;
	
	public R pageByLocation(Page<AtvMainActiveRespVO> page, String province, String city,String memberId);
}

